package com.github.pig.training.entity;

import java.util.Date;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.annotations.Version;
import com.baomidou.mybatisplus.enums.IdType;

import java.io.Serializable;

/**
 * <p>
 * 学员信息
 * </p>
 *
 * @author andrew
 * @since 2018-06-23
 */
@TableName("training_student")
public class TrainingStudent extends Model<TrainingStudent> {

    private static final long serialVersionUID = 1L;

    @TableId(value = "fid", type = IdType.AUTO)
    private Integer fid;
    /**
     * 编码
     */
    private String fnumber;
    /**
     * 姓名
     */
    private String fname;
    /**
     * 年龄
     */
    private Integer age;
    /**
     * 性别
     */
    private Integer sex;
    /**
     * 身份证号
     */
    @TableField("id_card")
    private String idCard;
    /**
     * 手机号1
     */
    private String tel1;
    /**
     * 手机号2
     */
    private String tel2;
    /**
     * 微信号
     */
    private String wechat;
    /**
     * 行业类别
     */
    @TableField("working_type")
    private String workingType;
    /**
     * 职位
     */
    @TableField("job_type")
    private String jobType;
    /**
     * 工作区域
     */
    @TableField("working_area")
    private String workingArea;
    /**
     * 工作地址
     */
    @TableField("working_address")
    private String workingAddress;
    /**
     * 居住区域
     */
    @TableField("home_area")
    private String homeArea;
    /**
     * 详细地址
     */
    @TableField("home_address")
    private String homeAddress;
    /**
     * 报名时间
     */
    @TableField("register_date")
    private Date registerDate;
    /**
     * 拿证时间
     */
    @TableField("finishes_date")
    private Date finishesDate;
    /**
     * 科目一通过时间
     */
    @TableField("sub1_finishes_date")
    private Date sub1FinishesDate;
    /**
     * 科目二通过时间
     */
    @TableField("sub2_finishes_date")
    private Date sub2FinishesDate;
    /**
     * 科目三通过时间
     */
    @TableField("sub3_finishes_date")
    private Date sub3FinishesDate;
    /**
     * 科目四通过时间
     */
    @TableField("sub4_finishes_date")
    private Date sub4FinishesDate;
    /**
     * 收集时间
     */
    @TableField("collect_date")
    private Date collectDate;
    /**
     * 渠道来源
     */
    private String channel;
    /**
     * 意向来源
     */
    @TableField("source_of_channel")
    private String sourceOfChannel;
    /**
     * 意向等级
     */
    @TableField("intention_level")
    private String intentionLevel;
    /**
     * 学员状态
     */
    @TableField("biz_status")
    private String bizStatus;
    /**
     * 跟进状态
     */
    @TableField("follow_up_status")
    private String followUpStatus;
    /**
     * 跟进人
     */
    @TableField("follow_up_user")
    private Integer followUpUser;
    /**
     * 跟进次数
     */
    @TableField("call_count")
    private Integer callCount;
    /**
     * 当前跟进次数
     */
    @TableField("current_call_count")
    private Integer currentCallCount;
    /**
     * 收集人
     */
    @TableField("collect_user")
    private Integer collectUser;
    /**
     * 创建人
     */
    @TableField("create_user")
    private Integer createUser;
    /**
     * 创建时间
     */
    @TableField("create_time")
    private Date createTime;
    /**
     * 最后修改时间
     */
    @TableField("update_time")
    private Date updateTime;
    /**
     * 最后修改人
     */
    @TableField("update_user")
    private Integer updateUser;
    /**
     * 选择我们的原因
     */
    @TableField("chose_reason")
    private String choseReason;
    /**
     * 认为我们的价格
     */
    @TableField("price_evaluate")
    private String priceEvaluate;
    /**
     * 前台接待满意度
     */
    @TableField("reception_evaluate")
    private String receptionEvaluate;
    /**
     * 校区
     */
    private String school;
    /**
     * 版本
     */
    @Version
    private Integer version;
    /**
     * 删除标识
     */
    @TableField("del_flag")
    private String delFlag;
    /**
     * 最后跟进时间
     */
    @TableField("last_follow_up_time")
    private Date lastFollowUpTime;
    /**
     * 下次跟进日期
     */
    @TableField("next_follow_up_date")
    private Date nextFollowUpDate;

    /**
     * 备注
     */
    @TableField("remark")
    private String remark;

    /**
     * 警告类型
     */
    @TableField("warning_type")
    private Integer warningType;

    /**
     * 标签
     */
    @TableField("label")
    private String label;

    /**
     * 分组
     */
    @TableField("groupsort")
    private Integer groupsort;

    /**
     * 是否为有效数据
     */
    @TableField("is_valid")
    private Integer isValid;


    public Integer getGroupsort() { return groupsort; }

    public void setGroupsort(Integer groupsort) { this.groupsort = groupsort; }

    public String getLabel() { return label; }

    public void setLabel(String label) { this.label = label; }

    public Integer getFid() {
        return fid;
    }

    public void setFid(Integer fid) {
        this.fid = fid;
    }

    public String getFnumber() {
        return fnumber;
    }

    public void setFnumber(String fnumber) {
        this.fnumber = fnumber;
    }

    public String getFname() {
        return fname;
    }

    public void setFname(String fname) {
        this.fname = fname;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    public Integer getSex() {
        return sex;
    }

    public void setSex(Integer sex) {
        this.sex = sex;
    }

    public String getIdCard() {
        return idCard;
    }

    public void setIdCard(String idCard) {
        this.idCard = idCard;
    }

    public String getTel1() {
        return tel1;
    }

    public void setTel1(String tel1) {
        this.tel1 = tel1;
    }

    public String getTel2() {
        return tel2;
    }

    public void setTel2(String tel2) {
        this.tel2 = tel2;
    }

    public String getWechat() {
        return wechat;
    }

    public void setWechat(String wechat) {
        this.wechat = wechat;
    }

    public String getWorkingType() {
        return workingType;
    }

    public void setWorkingType(String workingType) {
        this.workingType = workingType;
    }

    public String getJobType() {
        return jobType;
    }

    public void setJobType(String jobType) {
        this.jobType = jobType;
    }

    public String getWorkingArea() {
        return workingArea;
    }

    public void setWorkingArea(String workingArea) {
        this.workingArea = workingArea;
    }

    public String getHomeArea() {
        return homeArea;
    }

    public void setHomeArea(String homeArea) {
        this.homeArea = homeArea;
    }

    public String getHomeAddress() {
        return homeAddress;
    }

    public void setHomeAddress(String homeAddress) {
        this.homeAddress = homeAddress;
    }

    public Date getRegisterDate() {
        return registerDate;
    }

    public void setRegisterDate(Date registerDate) {
        this.registerDate = registerDate;
    }

    public Date getFinishesDate() {
        return finishesDate;
    }

    public void setFinishesDate(Date finishesDate) {
        this.finishesDate = finishesDate;
    }

    public Date getSub1FinishesDate() {
        return sub1FinishesDate;
    }

    public void setSub1FinishesDate(Date sub1FinishesDate) {
        this.sub1FinishesDate = sub1FinishesDate;
    }

    public Date getSub2FinishesDate() {
        return sub2FinishesDate;
    }

    public void setSub2FinishesDate(Date sub2FinishesDate) {
        this.sub2FinishesDate = sub2FinishesDate;
    }

    public Date getSub3FinishesDate() {
        return sub3FinishesDate;
    }

    public void setSub3FinishesDate(Date sub3FinishesDate) {
        this.sub3FinishesDate = sub3FinishesDate;
    }

    public Date getSub4FinishesDate() {
        return sub4FinishesDate;
    }

    public void setSub4FinishesDate(Date sub4FinishesDate) {
        this.sub4FinishesDate = sub4FinishesDate;
    }

    public Date getCollectDate() {
        return collectDate;
    }

    public void setCollectDate(Date collectDate) {
        this.collectDate = collectDate;
    }

    public String getChannel() {
        return channel;
    }

    public void setChannel(String channel) {
        this.channel = channel;
    }

    public String getIntentionLevel() {
        return intentionLevel;
    }

    public void setIntentionLevel(String intentionLevel) {
        this.intentionLevel = intentionLevel;
    }

    public String getBizStatus() {
        return bizStatus;
    }

    public void setBizStatus(String bizStatus) {
        this.bizStatus = bizStatus;
    }

    public String getFollowUpStatus() {
        return followUpStatus;
    }

    public void setFollowUpStatus(String followUpStatus) {
        this.followUpStatus = followUpStatus;
    }

    public Integer getFollowUpUser() {
        return followUpUser;
    }

    public void setFollowUpUser(Integer followUpUser) {
        this.followUpUser = followUpUser;
    }

    public Integer getCallCount() {
        return callCount;
    }

    public void setCallCount(Integer callCount) {
        this.callCount = callCount;
    }

    public Integer getCurrentCallCount() {
        return currentCallCount;
    }

    public void setCurrentCallCount(Integer currentCallCount) {
        this.currentCallCount = currentCallCount;
    }

    public Integer getCollectUser() {
        return collectUser;
    }

    public void setCollectUser(Integer collectUser) {
        this.collectUser = collectUser;
    }

    public Integer getCreateUser() {
        return createUser;
    }

    public void setCreateUser(Integer createUser) {
        this.createUser = createUser;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public Integer getUpdateUser() {
        return updateUser;
    }

    public void setUpdateUser(Integer updateUser) {
        this.updateUser = updateUser;
    }

    public String getChoseReason() {
        return choseReason;
    }

    public void setChoseReason(String choseReason) {
        this.choseReason = choseReason;
    }

    public String getPriceEvaluate() {
        return priceEvaluate;
    }

    public void setPriceEvaluate(String priceEvaluate) {
        this.priceEvaluate = priceEvaluate;
    }

    public String getReceptionEvaluate() {
        return receptionEvaluate;
    }

    public void setReceptionEvaluate(String receptionEvaluate) {
        this.receptionEvaluate = receptionEvaluate;
    }

    public String getSchool() {
        return school;
    }

    public void setSchool(String school) {
        this.school = school;
    }

    public Integer getVersion() {
        return version;
    }

    public void setVersion(Integer version) {
        this.version = version;
    }

    public String getDelFlag() {
        return delFlag;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public Date getLastFollowUpTime() {
        return lastFollowUpTime;
    }

    public void setLastFollowUpTime(Date lastFollowUpTime) {
        this.lastFollowUpTime = lastFollowUpTime;
    }

    public String getSourceOfChannel() { return sourceOfChannel;}

    public void setSourceOfChannel(String sourceOfChannel) {
        this.sourceOfChannel = sourceOfChannel;
    }

    @Override
    protected Serializable pkVal() {
        return this.fid;
    }

    public Date getNextFollowUpDate() {
        return nextFollowUpDate;
    }

    public void setNextFollowUpDate(Date nextFollowUpDate) {
        this.nextFollowUpDate = nextFollowUpDate;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Integer getWarningType() {
        return warningType;
    }

    public void setWarningType(Integer warningType) {
        this.warningType = warningType;
    }

    public String getWorkingAddress() {
        return workingAddress;
    }

    public void setWorkingAddress(String workingAddress) {
        this.workingAddress = workingAddress;
    }

    public Integer getIsValid() {
        return isValid;
    }

    public void setIsValid(Integer isValid) {
        this.isValid = isValid;
    }

    @Override
    public String toString() {
        return "TrainingStudent{" +
                "fid=" + fid +
                ", fnumber='" + fnumber + '\'' +
                ", fname='" + fname + '\'' +
                ", age=" + age +
                ", sex=" + sex +
                ", idCard='" + idCard + '\'' +
                ", tel1='" + tel1 + '\'' +
                ", tel2='" + tel2 + '\'' +
                ", wechat='" + wechat + '\'' +
                ", workingType='" + workingType + '\'' +
                ", jobType='" + jobType + '\'' +
                ", workingArea='" + workingArea + '\'' +
                ", workingAddress='" + workingAddress + '\'' +
                ", homeArea='" + homeArea + '\'' +
                ", homeAddress='" + homeAddress + '\'' +
                ", registerDate=" + registerDate +
                ", finishesDate=" + finishesDate +
                ", sub1FinishesDate=" + sub1FinishesDate +
                ", sub2FinishesDate=" + sub2FinishesDate +
                ", sub3FinishesDate=" + sub3FinishesDate +
                ", sub4FinishesDate=" + sub4FinishesDate +
                ", collectDate=" + collectDate +
                ", channel='" + channel + '\'' +
                ", sourceOfChannel='" + sourceOfChannel + '\'' +
                ", intentionLevel='" + intentionLevel + '\'' +
                ", bizStatus='" + bizStatus + '\'' +
                ", followUpStatus='" + followUpStatus + '\'' +
                ", followUpUser=" + followUpUser +
                ", callCount=" + callCount +
                ", currentCallCount=" + currentCallCount +
                ", collectUser=" + collectUser +
                ", createUser=" + createUser +
                ", createTime=" + createTime +
                ", updateTime=" + updateTime +
                ", updateUser=" + updateUser +
                ", choseReason='" + choseReason + '\'' +
                ", priceEvaluate='" + priceEvaluate + '\'' +
                ", receptionEvaluate='" + receptionEvaluate + '\'' +
                ", school='" + school + '\'' +
                ", version=" + version +
                ", delFlag='" + delFlag + '\'' +
                ", lastFollowUpTime=" + lastFollowUpTime +
                ", nextFollowUpDate=" + nextFollowUpDate +
                ", remark='" + remark + '\'' +
                ", warningType=" + warningType +
                ", label='" + label + '\'' +
                ", groupsort=" + groupsort +
                ", isValid=" + isValid +
                '}';
    }
}
